package com.service;

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.service.IService;
import com.entity.*;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author pumpkin
 * @since 2021-10-22
 */
public interface CodeCjlService extends IService<CodeCjl> {

    /**
     * 实时获取成交量
     * @return
     */
    List<CodeCjl> getCodeCjls(List<CodeCjl> list);


    CodeCjl saveCjl(List<Object> parse, String szorsh, String name);

    /**
     * 提示规则
     * @param lists
     * @param red
     * @return
     */
    void hint(List<CodeCjl> lists, String red);

    /**
     * 日涨幅提示
     * @param codeCjl
     */
    HintShares getrzf(CodeCjl codeCjl);

    /**
     * 获取周涨幅数据
     * @param codeCjl
     * @return
     */
    Map<String,String> getBackStr(CodeCjl codeCjl);

    /**
     * 获取所有数据
     * @param parse
     * @param szorsh
     * @param name
     * @return
     */
    List<CodeCjl> getPriceList(List<Object> parse, String szorsh, String name);

    /**
     * 神奇九转
     * @param parse
     * @param szorsh
     * @param name
     * @return
     */
    int nineTurn(List<Object> parse, String szorsh, String name);

    /**
     * 计算分时均线
     */
    void getMavg();

    /**
     * 发送邮件
     * @param hintShares
     */
    void sendBy163(HintShares hintShares,String title) throws Exception;

    /**
     * 判断，进行通知
     * @param dataJson
     */
    void doEstimate(JSONObject dataJson, HintShares hintShares);

    /**
     * 获取实时数据
     * @param codeRedList
     * @return
     */
    List<CodeCjl> getCodeCjlsByTx(List<CodeCjl> codeRedList);

}
